package com.bestv.search.common.service.impl;

import com.bestv.search.common.dao.TopNCacheDao;
import com.bestv.search.common.dataSource.DataSourceKey;
import com.bestv.search.common.model.TopNCache;
import com.bestv.search.common.service.TopNCacheManager;

import java.util.List;

/**
 * @author Michael Wang
 */

// $Id$
public class TopNCacheManagerImpl implements TopNCacheManager {

    private TopNCacheDao topNCacheDao;

    public void saveOrUpdate(DataSourceKey key, List<TopNCache> list) {
        for (TopNCache topNCache : list) {
            topNCacheDao.saveOrUpdate(topNCache);
        }
    }

    public List<TopNCache> get(DataSourceKey key, String type, String subType, String category, int topN) {
        return topNCacheDao.get(type, subType, category, topN);
    }

    public List<TopNCache> getIncrease(DataSourceKey key, String type, String subType, String category, int topN) {
        return topNCacheDao.getIncrease(type, subType, category, topN);
    }

    public void updateMediaCodeHitCache(DataSourceKey key, String type) {
        topNCacheDao.updateMediaCodeHitCache(type);
    }

    public int deleteHistroyByKeyword(DataSourceKey key, String keyword) {
        return topNCacheDao.deleteHistroyByKeyword(keyword);
    }

    public TopNCacheDao getTopNCacheDao() {
        return topNCacheDao;
    }

    public void setTopNCacheDao(TopNCacheDao topNCacheDao) {
        this.topNCacheDao = topNCacheDao;
    }
}
